Segment Routing (“SR”) allows for a flexible definition of end-to-end paths by encoding paths as sequences of topological sub-paths, or “segments,” which are exchanged using routing protocols (e.g., IS-IS and OSPF or BGP). Two types of segments are defined, including “prefix segments” and “adjacency segments.” A prefix segment represents an Equal Cost Multi-Path (“ECMP”) aware shortest-path to a prefix, e.g. as per the state of the IGP topology. An adjacency segment represents a hop over a specific adjacency between two nodes. An SR control plane may be applied to both IPv6 and MPLS data-planes. In segment routing (“SR”), a node steers a packet through a controlled set of “segments,” by prepending the packet with an SR header. A segment can represent any instruction, whether it be topological or service-based. SR enables a flow to be enforced through any topological path and/or service chain, while maintaining a per-flow state only at the ingress node to the SR domain. The SR architecture may be applied directly to a Multi-Protocol Label Switching (“MPLS”) dataplane with no change on the forwarding plane. Interior Gateway Protocol (“IGP”) based segments require minor extensions to the existing link-state routing protocols.
Under certain conditions, an SR packet whose active prefix segment is consumed at a node X can potentially present itself back at the same node X. Such “looping” of packets may occur due to misconfiguration of a routing table at a downstream node or after a network topology change event followed by a slow convergence of the routing protocol on nodes along the packet path. SR allows a node to steer traffic onto a specific traffic engineered path (i.e., an SR-TE path or tunnel) by prepending packets with a list of segments that define the path. An incoming packet that is routed over an SR-TE tunnel is prepended with the segment list representing the TE path; however, under certain conditions, the list of selected segments that define the underlying paths can result packets endlessly looping between the headend node, or router, and a downstream node, or router. Under such conditions, packets steered over the SR-TE path never reach their intended destination, while network resources between the headend node and the downstream looping node are continuously consumed in the process.